<template>
  <div class="home-recommend">
    <h1>推荐歌单</h1>
    <div class="wrapper" ref="wrapper">
      <ul class="content" ref="content">
        <li
          v-for="(item, index) in listData"
          :key="index"
          @click="selectItem(item)"
        >
          <div class="cover">
            <van-image :src="item.cover" radius="10" />
            <span>{{ item.listen_num | numFilter(1) }}万</span>
          </div>
          <span>{{ item.title }}</span>
        </li>
      </ul>
    </div>
  </div>
</template>

<script>
import { betterScrollHorizontal } from "../../common/betterScroll";
export default {
  data() {
    return {
      listData: [],
    };
  },
  created() {
    this.getSongListData();
  },
  methods: {
    //获取推荐歌单数据
    getSongListData() {
      this.$request("get", "/recommend/playlist/u").then((res) => {
        console.log(res);
        if (res.result == 100) {
          this.listData = res.data.list;
        }
        // console.log(this.listData);
        // 调用横向滚动的方法
        betterScrollHorizontal(
          this,
          this.$refs.wrapper,
          this.$refs.content,
          this.listData.length,
          10
        );
      });
    },
    //列表项的单击事件
    selectItem(item) {
      const id = item.content_id;  //获取歌单的ID
      // console.log("歌单ID：" + id);  //控制台输出歌单ID
      //1.编程式导航，字符串路径的方式
      this.$router.push(`/songlist/${id}`);
      //2.编程式导航，带有路径对象的方式
      // this.$router.push({path: `/songlist/${id}`})
      //3.编程式导航，命名路由的方式
      // this.$$router.push({
      //   name: 'songlist',
      //   params: {
      //     id: id, //由于property属性he value值是一样的，所以此语句等同于  id
      //   }
      // })
    },
  },
  // 局部过滤器（本地）
  // filters: {
  //   //处理播放量的显示格式（万、小数点）
  //   /**
  //    * param num :小数位固定的位数
  //    * param value :处理的数值
  //    */
  //   // numFilter:function(value){
  //   // }
  //   // numFilter(value){
  //   //   return parseFloat(value/10000).toFixed(1)
  //   // }
  //   numFilter(value, num) {
  //     return parseFloat(value / 10000).toFixed(num);
  //   },
  // },
};
</script>

<style scoped>
/* .home-recommend ul {
  display: flex;
  flex-wrap: wrap;*/ /* 允许换行 */
/* }
.home-recommend ul > li {
  width: calc((100% - 1rem) / 3 * 1);
}
.home-recommend ul > li:nth-of-type(3n + 2) {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}*/
.wrapper {
  width: 100%;
  overflow: hidden;
}
/* ul.content {
  width: calc(12 * 10rem);
} */
ul.content li {
  width: 10rem;
  display: inline-block;
  vertical-align: top;
}
ul.content li * {
  margin: 0 0.1rem;
}
ul.content li > span {
  font-size: 0.8rem;
  color: red;
}
.cover {
  position: relative;
}
.cover > span {
  position: absolute;
  right: 0.2rem;
  bottom: 0.4rem;
  background-color: #a6a0a0;
  color: white;
  border-radius: 1rem;
  width: 5rem;
}
</style>